﻿using System;

// Token: 0x020001B2 RID: 434
public abstract class CutAction : FactoryProduct
{
	// Token: 0x06000B4A RID: 2890 RVA: 0x000423CC File Offset: 0x000405CC
	public CutAction(CutScene cutScene, CUTACT type)
	{
		this.cutScene = cutScene;
		this.Type = type;
		this.order = -1;
	}

	// Token: 0x06000B4B RID: 2891 RVA: 0x000423EC File Offset: 0x000405EC
	public CutAction(CutScene cutScene, CUTACT type, float time)
	{
		this.cutScene = cutScene;
		this.time = time;
		this.Type = type;
		this.order = -1;
	}

	// Token: 0x17000161 RID: 353
	// (get) Token: 0x06000B4C RID: 2892 RVA: 0x00042410 File Offset: 0x00040610
	// (set) Token: 0x06000B4D RID: 2893 RVA: 0x00042418 File Offset: 0x00040618
	public CUTACT Type { get; protected set; }

	// Token: 0x06000B4E RID: 2894 RVA: 0x00042424 File Offset: 0x00040624
	public virtual void Load(TagText.Element element, int order)
	{
		this.order = order;
		element.GetVal(ref this.time, "time", 0);
	}

	// Token: 0x06000B4F RID: 2895 RVA: 0x00042440 File Offset: 0x00040640
	public virtual void Save(TagText.Element element)
	{
		element.AddAttribute("time", this.time.ToString());
	}

	// Token: 0x06000B50 RID: 2896 RVA: 0x00042460 File Offset: 0x00040660
	public virtual void Action(bool skip)
	{
	}

	// Token: 0x04000B9B RID: 2971
	protected CutScene cutScene;

	// Token: 0x04000B9C RID: 2972
	public float time;

	// Token: 0x04000B9D RID: 2973
	public int order;
}
